package com.econ.powercloud.ems.dal.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 电价模型详情
 * </p>
 *
 * @author AutoGenerator
 * @since 2022-10-18
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class EmsPriceModelDetail extends Model {

    private static final long serialVersionUID = 1L;

    /**
     * 电价模型详情id
     */
    @TableId(value = "pid", type = IdType.AUTO)
    private Integer pid;

    /**
     * 模型id
     */
    private Integer modelId;

    /**
     * 适用时间(格式yyyy-MM)
     */
    private String applyTime;

    /**
     * 电价类型(见枚举)
     */
    private Integer priceType;

    /**
     * 电价类型
     */
    private Integer voltageLevel;

    /**
     * 基本电费类型(见枚举)
     */
    private Integer basicElectricity;

    /**
     * 基本电价(元/千伏安·月)
     */
    private Double basicPrice;

    /**
     * 尖电价
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Double spikePrice;

    /**
     * 峰电价
     */
    private Double peakPrice;

    /**
     * 平电价
     */
    private Double flatPrice;

    /**
     * 谷电价
     */
    private Double valleyPrice;

    /**
     * 尖峰平谷电价计算模型,见IncomeCalculationType枚举
     */
    private Integer calculationType;

    /**
     * 特殊情况
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Integer specialCase;

    /**
     * 对比条件
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Integer compareCond;

    /**
     * 值
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String value;

    /**
     * 特殊情况下的尖电价
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Double specialSpikePrice;

    /**
     * 特殊情况下的峰电价
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Double specialPeakPrice;

    /**
     * 特殊情况下的平电价
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Double specialFlatPrice;

    /**
     * 特殊情况下的谷电价
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Double specialValleyPrice;

    /**
     * 特殊情况下的尖峰平谷电价计算模型
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Integer specialCalculationType;

    /**
     * 创建时间
     */
    private Long gmtCreate;

    /**
     * 修改时间
     */
    private Long gmtModify;


}
